package problems.daily.y2021m7;

import utils.beans.ListNode;

/**
 * @author habitplus
 * @since 2021-07-15 10:47
 */
public class T20210715N3 {
    // 876. 链表的中间结点
    // 给定一个头结点为 head 的非空单链表，返回链表的中间结点。
    // 如果有两个中间结点，则返回第二个中间结点。
    //
    // 提示：
    //      给定链表的结点数介于 1 和 100 之间。
    // 链接：https://leetcode-cn.com/problems/middle-of-the-linked-list/
    public ListNode middleNode(ListNode head) {
        int len = 0;
        ListNode assist = head;
        while (assist != null) {
            assist = assist.next;
            len++;
        }

        len /= 2;

        for (int i = 0; i < len; i++) {
            head = head.next;
        }

        return head;
    }
}
